<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Document</title>
</head>
<body>
  
  <!-- pinia  更极致更轻量的状态管理工具
       options 写法 state  actions  getters  
       composition写法
  -->
  <!-- 优医问诊 项目 day01
       1. 创建项目  配置了 校验工具
       2. 剔除项目中多余的文件组件  新建文件和文件夹目录
       3. 路由
       4. 导入vant组件库
       5. 项目的移动端适配 测试px单位转成vw单位
       6. css变量主题定制 main.scss中定义了颜色变量 并覆盖了 默认按钮的主题色
       7. 仓库 pinia
          7.1 user仓库模块的定义  user数据  设置user数据  删除user数据的方法
          7.2 user的type类型  types/user.d.ts   用户信息类型
          7.3 app页面设置两个按钮 测试 存储和删除
          7.4 配合 pinia-plugin-persistedstate 插件实现pinia仓库数据的持久化存储
          7.5 统一维护管理 pinia store/index
        8. axios请求封装处理   
           8.1 新建utils/request模块
           8.2 配置了基地址和超时 请求拦截器中的请求头中统一挂载token
           8.3 业务失败 响应拦截器中 处理响应业务状态码是否为10000  提示 抛出错误的promise
           8.4 直接res.data响应
           8.5 401  响应拦截器的第二个函数中 清除用户信息, 跳转到登录页面 并记录跳转前所在的页面
       9.请求函数的封装
  -->
  <!-- 优医问诊 项目 day02
    1. 封装了 请求函数 request 提供了请求方式, 请求的地址, 请求的参数  类型处理
    2. 组件的自动注册 unplugin-vue-components  vite.config.ts配置 看文档
    3. cp-navbar组件的封装
      3.1 components中准备组件结构和样式
      3.2 定制title属性 right-text属性 (父传子控制)  右侧文本的点击事件  字传父
      3.3 点击左侧<返回按钮的回退  history.state.back 
      3.4 组件的类型注解
    4. 登录页面
      4.1 登录页面组件和路由规则的配置
      4.2 快速搭建了登录页面的结构和样式
      4.3 表单数据关联 表单的校验规则(抽离)  同意许可协议 表单的预校验
      4.4 准备手机号+密码的接口 并且调用  存储了用户信息  提示  跳转 (有回跳回跳 反之去/user)
      4.5 面板切换 手机号+验证  布尔值控制
      4.6 发送获取验证码之前 手机号格式的校验  (1.form绑定ref 2.调用validate('name属性')方法  3.对应校验的field表单添加name属性 )
      4.7 准备获取验证码的接口 
      4.8 倒计时 
      4.9 发送手机号+验证码的请求  code的字段 校验规则
  -->
  <!-- 优医问诊 项目 day03
    1. svg画布 配置插件vite-plugin-svg-icons 页面中得到 svg画布
    2. 封装cp-icon组件 接收props树形
    3. 登录页面的密码的可见与不可见
    4. 搭建了layout+home+article+notify+user五个组件的路由规则
    5. tabbar 开启路由模式 定制图标 
    6. 配置了访问权限控制  前置导航守卫 to, from  return /路径  return true / undefined 放行
    7. 配置页面切换加载进度条
       1. 安装 nprogress  安装 @types/nprogress
       2. 导入nprogress和样式文件
       3. 前置守卫中 开启进度条
       4. 后置守卫中 关闭进度条
       5. 隐藏右上角加载效果 修改进度条颜色
    8. user页面 定义了用户的信息类型 获取用户信息 渲染
    9. 快捷工具模块
    10. 退出功能
      1. 确认消息框
      2. 清除用户信息
      3. 跳转登录页面
    11. 配置家庭档案的组件和路由规则
    12. 获取渲染家庭档案的信息
    13. vue3中v-model语法糖  组件上使用v-model 子组件接收 modelValue 发布的自定义事件 update:modelValue  v-model:a=""  update:a
    14. 封装cp-radio-btn组件
      1. 新建了cp-radio-btn组件
      2. 配置组件的类型注解
      3. 组件内部接收options的数组渲染对应的数量  和接收默认激活的值(可选)默认激活操作
      4. 点击某个按钮 发布自定义事件 update:modelValue 同步给父组件
      5. 父组件使用v-model指令

      ts新知识点 Pick(截取想要的字段)  Omit(去除不要的字段)
  
  
  
  -->
</body>

<!-- vue2中可以使用 vuex 可以使用 pinia 
     vue3中可以使用 vuex 可以使用 pinia 
-->
</html>